/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CapaNegocios;
import entidad.Unidaddemedida;
import controlador.UnidaddemedidaJpaController;
import controlrestaurante.pmf;
import java.util.List;
/**
 *
 * @author a
 */
public class CNUnidadMedida {
    //******Funciones insertar**********
    public static boolean insertar(String nombre, String tipo, float numeroConversor)
    {
        try
        {
            Unidaddemedida unidad = new Unidaddemedida();
            unidad.setActivo(true);
            unidad.setNombre(nombre);
            unidad.setTipo(tipo);
            unidad.setNumeroConversor(numeroConversor);
            UnidaddemedidaJpaController controlador = new UnidaddemedidaJpaController(pmf.getInstancia().getEMF());
            controlador.create(unidad);
        }catch(Exception e)
        {
            return false;
        }
        return true;
    }
    //************* FUNCIONES MODIFICAR **************
    public static boolean modificar(Unidaddemedida unidad)
    {
        try
        {
            UnidaddemedidaJpaController controlador = new UnidaddemedidaJpaController(pmf.getInstancia().getEMF());
            controlador.edit(unidad);
            
        }catch (Exception e)
        {
            return false;
        }
        return true;
    }
    public static boolean activar(int id)
    {
        try{
             UnidaddemedidaJpaController controlador = new UnidaddemedidaJpaController(pmf.getInstancia().getEMF());
            Unidaddemedida unidad = controlador.findUnidaddemedida(id);
            unidad.setActivo(true);
            controlador.edit(unidad);
        }catch(Exception e)
        {
            return false;
        }
        return true;
    }
     public static boolean desactivar(int id)
    {
        try{
             UnidaddemedidaJpaController controlador = new UnidaddemedidaJpaController(pmf.getInstancia().getEMF());
            Unidaddemedida unidad = controlador.findUnidaddemedida(id);
            unidad.setActivo(false);
            controlador.edit(unidad);
        }catch(Exception e)
        {
            return false;
        }
        return true;
    }
    //************* FUNCIONES MODIFICAR **************
    public static Unidaddemedida buscarId(int id)
    {
        Unidaddemedida unidad= null;
        try{
             UnidaddemedidaJpaController controlador = new UnidaddemedidaJpaController(pmf.getInstancia().getEMF());
             unidad = controlador.findUnidaddemedida(id);
        }catch(Exception e)
        {
            return null;
        }
        return unidad;
    }
    public static List<Unidaddemedida> buscarTodos()
    {
         List <Unidaddemedida> lista= (List) Consultas.consulta("Unidaddemedida", "findByActivo", "activo", true);
         return lista;
    }
    
    public static List<Unidaddemedida> buscarTipo(String nombre)
    {
         List <Unidaddemedida> lista= (List) Consultas.consulta("Unidaddemedida", "findByTipo", "tipo", nombre);
         return lista;
    }
    
    public static List<Unidaddemedida> buscarTodosEliminados()
    {
         List <Unidaddemedida> lista= (List) Consultas.consulta("Unidaddemedida", "findByActivo", "activo", false);
         return lista;
    }
    
    public static List<Unidaddemedida> buscarPorNombre(String nombre)
    {
         List <Unidaddemedida> lista= (List) Consultas.consulta("Unidaddemedida", "findByNombre", "nombre", "%"+nombre+"%");
         return lista;
    }
}
